#ifndef UTIL_H
#define UTIL_H
#include <stdint.h>
#include <unistd.h>
#include <pthread.h>
#include <sys/types.h>
#include <sys/syscall.h>
#include <stdio.h>
#include <string.h>
#include <vector>
#include <string>

#include <sstream>
#include "comment.h"
namespace sylar
{
    pid_t GetThreadId();
    uint64_t GetFiberId();
    uint64_t GetElapse(); // 程序启动后流逝的毫秒数
    uint64_t GetTime();   // 当前时间戳（秒）
    void InitUtil();      // 初始化工具类（设置启动时间）

    void BackTrace(std::vector<std::string> &bt, int size=64, int skip=1);
    std::string BackTraceToString(int size=64, int skip=2, const std::string &prefix = "");

}

#endif